Kanzi 3.3 migration guide

Kanzi 3.3 migration guide contains information and provides instructions for porting existing Kanzi applications from the previous Kanzi release.

Kanzi Engine changes

Directory structure

Renderer.hpp

Kanzi 3.2.2 Kanzi 3.3
bool linkShader(const KzcMemoryManager* memoryManager, unsigned int programHandle, kzString shaderName); bool linkShaderProgram(unsigned int programHandle, kzString shaderName);
bool compileSourceShader(const KzcMemoryManager* memoryManager, Shader::ShaderType shaderType, unsigned int shaderHandle, kzString shaderCode, kzString shaderName); bool compileSourceShader(Shader::ShaderType shaderType, unsigned int shaderHandle, string_view shaderCode, string_view shaderName);
bool programBinary(const KzcMemoryManager* memoryManager, unsigned int program, unsigned int formatConstant, const void* data, unsigned int dataSize); bool deployProgramBinary(unsigned int program, unsigned int binaryFormat, const void* data, unsigned int dataSize);
void deleteShader(unsigned int programHandle, unsigned int vertexShaderHandle, unsigned int fragmentShaderHandle);

void deleteShaderProgram(unsigned int programHandle);

void deleteShader(unsigned int shaderHandle);

bool compileSourceShader(Shader::ShaderType shaderType, unsigned int shaderHandle, string_view shaderCode, string_view shaderName); bool compileSourceShader(ShaderType shaderType, unsigned int shaderHandle, const char* const shaderCode, string_view shaderName);
bool deployProgramBinary(unsigned int program, unsigned int binaryFormat, const void* data, unsigned int dataSize); bool deployBinaryProgram(unsigned int program, unsigned int binaryFormat, const void* data, unsigned int dataSize);
bool isGlShaderBinaryFormatSupported(unsigned int glShaderBinaryFormat) const; bool isShaderBinaryFormatSupported(unsigned int glShaderBinaryFormat) const;
bool isGlProgramBinaryFormatSupported(unsigned int glProgramBinaryFormat) const; bool isProgramBinaryFormatSupported(unsigned int glProgramBinaryFormat) const;
void setBinaryShaderFormatIdentifier(kzString binaryShaderID, unsigned int binaryFormatGPUConstant); Removed.
kzString getBinaryShaderFormatIdentifier() const; Removed.
void setProgramBinaryExtensionEnabled(bool enabled); Removed.
bool programBinaryExtensionIsEnabled() const; Removed.
Not available. enum ProgramBinary
Not available. ProgramBinary getProgramBinarySupport() const;
Not available. bool isGlShaderBinaryFormatSupported(unsigned int glShaderBinaryFormat) const;
Not available. bool isGlProgramBinaryFormatSupported(unsigned int glProgramBinaryFormat) const;
Not available. New value in the enum Information: InformationProgramBinarySupport

Shader.hpp

Kanzi 3.2.2 Kanzi 3.3
void initializeFromMemory(kzString vertexShader, kzString fragmentShader, kzUint vertexAttributeCount, const kzString* vertexAttributes); void initializeFromMemory(string_view vertexShader, string_view fragmentShader, vector<string> const& attributes);
void initializeFromMemory(string_view vertexShader, string_view fragmentShader, vector<string> const& attributes); void initializeFromMemory(const char* const vertexShaderSourceSource, const char* const fragmentShaderSourceCode, unsigned int attributeCount, const char* const* attributes);
void initializeFromMemory(unsigned int shaderBinaryFormat, unsigned int dataSize, void* data, vector<string> const& attributes); void initializeFromMemory(unsigned int shaderBinaryFormat, unsigned int dataSize, void* data, unsigned int attributeCount, const char* const* attributes);
void initializeFromMemory(unsigned int shaderBinaryFormat, unsigned int vertexDataSize, void* vertexData, unsigned int fragmentDataSize, void* fragmentData, vector<string> const& attributes); void initializeFromMemory(unsigned int shaderBinaryFormat, unsigned int vertexDataSize, void* vertexData, unsigned int fragmentDataSize, void* fragmentData, unsigned int attributeCount, const char* const* attributes);
void compile(const KzcMemoryManager* memoryManager, Renderer* renderer, kzString shaderCode, ShaderType shaderType, kzString shaderName, unsigned int* out_handle, bool* out_compileSuccess); Removed. Use Renderer instead.
Not available. void initializeFromMemory(unsigned int shaderBinaryFormat, unsigned int dataSize, void* data, vector<string> const& attributes);
Not available.

void initializeFromMemory(unsigned int shaderBinaryFormat, unsigned int vertexDataSize, void* vertexData, unsigned int fragmentDataSize, void* fragmentData, vector<string> const& attributes);

See also

Kanzi 3.3 release notes

Known issues